import numpy as np


def gen_golden_data_atan2():
    # 生成包含正负数的输入数据
    # 生成y坐标数据
    input_y = np.random.uniform(-100, 100, [8, 2048]).astype(np.float32)
    # 生成x坐标数据
    input_x = np.random.uniform(-100, 100, [8, 2048]).astype(np.float32)
    
    # 计算atan2(y, x) - 返回弧度值
    golden = np.arctan2(input_y, input_x).astype(np.float32)

    # 确保输入输出目录存在
    import os
    os.makedirs("./input", exist_ok=True)
    os.makedirs("./output", exist_ok=True)
    
    # 保存输入数据（y和x）
    input_y.tofile("./input/input_y.bin")
    input_x.tofile("./input/input_x.bin")
    
    # 保存期望输出结果
    golden.tofile("./output/golden.bin")

if __name__ == "__main__":
    gen_golden_data_atan2()